One of the most common uses of the Internet is the transfer and exchange of data files. These files may contain text, images, music, video, or the like. In response to the demand for easy transfer of large data files, a number of different methodologies have been developed. These methodologies include file transfer protocol (FTP), torrents, peer-to-peer (P2P), and the like. While these methodologies simplify the upload and download of large data files, the bandwidth required for the transfer remains unchanged.
Large files require large amounts of bandwidth for fast transfers. Bandwidth limitations are particularly important in lower speed networks. For example, a user may be connected to the Internet through a local area network (LAN) and a gateway. Wireless communication networks where a user connects to the internet through a wireless communication device, wireless base station, and a gateway also have bandwidth limitations. While the link between the gateway and the Internet may have a very large bandwidth, users will be limited by the available bandwidth of the LAN or the wireless network. In response to this limitation, some systems include functionality in the gateway or other server system to cache large files uploaded by the user. This allows subsequent requests for the file received over the Internet to be serviced by the server system having a large bandwidth to the Internet instead of the user system over the lower bandwidth LAN.